package map02;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Set;

/*
HashMap遍历
    由于Map体系没有获取迭代器的方法，所以Map体系不能通过迭代器直接遍历
    所以我么考虑将Map体系集合转换成Collection体系集合，就可以使用迭代器

     Set<K> keySet()
          将Map中所有的key封装到一个Set集合中，然后返回这个Set集合
 */
public class HashMapDemo01 {
    public static void main(String[] args) {
        //method01();
        HashMap<String, String> hm = new HashMap<>();
        hm.put("无忌", "赵敏");
        hm.put("乔峰", "阿朱");
        hm.put("段誉", "王语嫣");
      /*  Set<String> keys = hm.keySet();
        for (String key : keys) {
            System.out.println(key + " " + hm.get(key));
        }*/
        for (String key : hm.keySet()) {
            System.out.println(key + " " + hm.get(key));
        }

    }

    private static void method01() {
        //1.创建一个HashMap，初始化数据
        HashMap<String, String> hm = new HashMap<>();
        hm.put("无忌", "赵敏");
        hm.put("乔峰", "阿朱");
        hm.put("段誉", "王语嫣");
        Set<String> keys = hm.keySet();
        //System.out.println(keys);//[无忌, 乔峰, 段誉]
        //2.获取一个迭代器
        Iterator<String> iterator = keys.iterator();
        while (iterator.hasNext()) {
            String key = iterator.next();
            String value = hm.get(key);
            System.out.println(key + " " + value);
        }
    }
}
